The current paradigm in third party font management is to automatically activate fonts on open documents using plug-ins that operate within the process space of desktop publishing applications. Most modern operating systems contain application program interfaces (APIs) for activating fonts globally. All processes running on the operating system can see and use the globally active fonts. However, the APIs provided by the desktop publishing applications for plug-in development by third party vendors/developers are remarkably diverse. The lack of uniformity presents great difficulty for third party vendors to develop efficient plug-ins that would offer universal compatibility. There is little commonality of messaging or functionality provided, even across different versions of the same application or different applications that are sold in the same suite, Adobe®, for example.
In some systems, applications do not react to fonts activated after the application has been launched, and these applications simply fail to populate the font menu selection drop down box to include these activated fonts. Further, for those applications that do not react to system messages indicating that a new font is active on the operating system, activating fonts after the application is launched will not allow the user to see the document rendered in the way it was designed to be seen. That is, even though the fonts chosen for the document are active and available on the operating system, certain applications only populate font lists at start-up and will not render the text in the correct type face. These applications assume that a font activated after launch is missing and will substitute an alternative type face.
Furthermore, pre-loading all fonts that applications installed on a system might use would be inefficient and may require significant resource expenditure by the system. For example, some fonts might be specific to a single application. Thus, occupying system resources for those fonts that are only used by a single or a few applications that are not always active would be wasteful.